import numpy as np
import pandas as pd
import os
import sys
import pickle
from joblib import dump, load
import yaml
import statsmodels.api as sm
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import RandomizedSearchCV
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis as LDA
from sklearn.linear_model import LinearRegression as reg
import pdb
from pprint import pprint
from statistics import mean
import random
random.seed(50)
import math
import argparse

sys.path.insert(1,'/REDACTED/fairness/code/rf/scripts/rf')
import tune_utils_alt_outcome as tu
from gpd_test import *

###############################################
#### Hyperparameter Tuning
###############################################


sys.path.insert(1,'/REDACTED/fairness/code/rf/scripts/rf')
import tune_utils as tu

### get train and test data for each fold
tu.k_fold_split(random_state=50,
                 n_splits=5,
                 eitc=True,
                 dep_database=True,
                 datapath='/REDACTED/fairness/code/rf/data/')